home *** CD-ROM | disk | FTP | other *** search
Text File | 1996-06-22 | 517 b | 36 lines | [TEXT/BROW] |
- // EnsureAtomic.h
- // Created by Bill Hubauer on Mon, May 22, 1995 @ 6:56 AM.
-
- #ifndef __EnsureAtomic__
- #define __EnsureAtomic__
-
-
- static short asm DisableInterupts()
- {
- move.w SR,d0
- ori.w #0x0700,SR
- rts
- }
-
- #pragma parameter EnableInterupts(__D0)
- static void asm EnableInterupts(short saveSR)
- {
- move.w d0,-(a7)
- move.w (a7)+,SR
- rts
- }
-
-
- class EnsureAtomic
- {
- public:
- EnsureAtomic() {_saveSR = DisableInterupts();}
- virtual ~EnsureAtomic() {EnableInterupts(_saveSR);}
-
-
- private:
- short _saveSR;
- };
-
- #endif
-